﻿

using System;
using System.Threading.Tasks;
using System.Linq.Expressions;

using Oliving.Edge.IServices.BASE;
using Oliving.Edge.Model;
using Oliving.Edge.Model.Dto.XLT;
using Oliving.Edge.Model.Models.XLT;
using Oliving.Edge.Model.Dto.Xcx;

namespace Oliving.Edge.IServices.XLT
{
    /// <summary>
    /// ICD_CleaningPointServices , 保洁点
    /// </summary>	
    public interface ICD_CleaningPointServices : IBaseServices<CD_CleaningPoint>
    {


        /// <summary>
        /// 自定义分页查询
        /// </summary>
        /// <param name="whereExpression" > 查询条件</param>
        /// <param name="pageIndex" > 页码</param>
        /// <param name="pageSize" > 页大小</param>
        /// <param name="sortField" > 排序字段</param>
        /// <param name="sortOrder" > 排序 （asc/desc）</param>
        /// <returns></returns>
        Task<PageModel<CD_CleaningPointPageDto>> QueryPageList(
        Expression<Func<CD_CleaningPoint, bool>> whereExpression,
        int PageIndex = 1,
        int PageSize = 20,
        string sortField = null,
        string sortOrder = null);

        Task<xCleaningPoint> QueryById(string id);
        Task<FBjInfo> FQueryById(string id);
        Task<PageModel<FBjInfo>> GetPageList(Expression<Func<CD_CleaningRecord, bool>> whereExpression,
                int pageIndex = 1, int pageSize = 20);

    }
}

